package com.dctp.common.core;

import com.github.benmanes.caffeine.cache.Cache;
import com.github.benmanes.caffeine.cache.Caffeine;

import java.util.concurrent.TimeUnit;

public class CacheManager {

    /**
     * ✅ 构建一个 Caffeine 缓存（同步加载）
     * @param maxSize 最大缓存条目数
     * @param expireSeconds 过期时间（秒）
     */
    public static <K, V> Cache<K, V> build(int maxSize, int expireSeconds) {
        return Caffeine.newBuilder()
                .maximumSize(maxSize) // 缓存条目上限
                .expireAfterWrite(expireSeconds, TimeUnit.SECONDS) // 写入后多久过期
                .recordStats() // 开启统计（可选）
                .build();
    }
}
